home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 30.zip / BS1 part 30 / ImageFxv1.03_d1.adf / Install-ImageFX < prev    next >
Encoding:
Text File  |  1992-12-09  |  19.2 KB  |  682 lines

  1. ; ImageFX Installer Utility
  2. ;
  3. ; For ImageFX release 1.03
  4. ;
  5. ; (Last updated: TEK 12/9/92)
  6.  
  7.  
  8. (
  9.  
  10.    ; Which OS are we under?
  11.    (set osver (/ (getversion) 65536))
  12.  
  13.    ; Ask where to install it...
  14.    (set @default-dest
  15.       (askdir
  16.          (prompt "Select or create the directory where you would "
  17.                  "like to install ImageFX.  (You may install over "
  18.                  "an existing copy of ImageFX if you want "
  19.                  "to update it to this new version - your current "
  20.                  "configuration will be preserved.)")
  21.          (help "ImageFX and all necessary files will be installed "
  22.                "in the directory of your choice.  You may wish to "
  23.                "create a new directory for ImageFX by using the "
  24.                "'Make New Drawer' gadget.")
  25.          (default "RAM:")
  26.       )
  27.    )
  28.  
  29.    (working "Installing ImageFX Program...")
  30.  
  31.    (copyfiles
  32.       (prompt "")
  33.       (help @copyfiles-help)
  34.       (source "ImageFX:ImageFX")
  35.       (dest @default-dest)
  36.    )
  37.  
  38.    ; Do not write over existing icons!
  39.    (if (= (exists (tackon @default-dest "ImageFX.info")) 0)
  40.       (
  41.          (copyfiles
  42.             (prompt "")
  43.             (help @copyfiles-help)
  44.             (source "ImageFX:ImageFX.info")
  45.             (dest @default-dest)
  46.          )
  47.       )
  48.    )
  49.  
  50.    ; Save user's existing Default.keys file to Old.Default.keys
  51.  
  52.    (if (exists (tackon @default-dest "Default.keys"))
  53.       (
  54.          (set copykeys 1)
  55.          (if (> @user-level 1)
  56.             (set copykeys
  57.                (askbool
  58.                   (prompt "Do you want to make a backup copy of your current "
  59.                           "'Default.keys' file (in case you have made any changes "
  60.                           "you want to keep)?")
  61.                   (help "")
  62.                   (default 1)
  63.                )
  64.             )
  65.          )
  66.  
  67.          (if (<> copykeys 0)
  68.             (
  69.                (copyfiles
  70.                   (prompt "")
  71.                   (help @copyfiles-help)
  72.                   (source (tackon @default-dest "Default.keys"))
  73.                   (dest @default-dest)
  74.                   (newname "Old.Default.keys")
  75.                )
  76.                (if (> @user-level 1)
  77.                   (message "Your Default.keys file has been saved to 'Old.Default.keys'.")
  78.                )
  79.             )
  80.          )
  81.       )
  82.    )
  83.  
  84.    (copyfiles
  85.       (prompt "")
  86.       (help @copyfiles-help)
  87.       (source "ImageFX:Default.keys")
  88.       (dest @default-dest)
  89.    )
  90.  
  91.    ; Since presets are exactly the same, don't copy over
  92.    ; an existing file, in case the user has modified them.
  93.  
  94.    (if (= (exists (tackon @default-dest "Default.presets")) 0)
  95.       (
  96.          (copyfiles
  97.             (prompt "")
  98.             (help @copyfiles-help)
  99.             (source "ImageFX:Default.presets")
  100.             (dest @default-dest)
  101.          )
  102.       )
  103.    )
  104.  
  105.    ; README file is now on Disk #1
  106.  
  107.    (copyfiles
  108.       (prompt "")
  109.       (help @copyfiles-help)
  110.       (source "ImageFX:")
  111.       (dest @default-dest)
  112.       (choices
  113.          "README"
  114.          "README.info"
  115.       )
  116.    )
  117.  
  118.    ;----------------------------------------------------------
  119.    ; Prompt for second disk.
  120.  
  121.    (askdisk
  122.       (prompt "Please insert ImageFX Disk #2 in any drive.")
  123.       (help "")
  124.       (dest "ImageFX2")
  125.    )
  126.  
  127.    (working "Installing ImageFX Modules...")
  128.  
  129.    (makedir (tackon @default-dest "modules"))
  130.    (makedir (tackon @default-dest "modules/preview"))
  131.    (makedir (tackon @default-dest "modules/scanner"))
  132.    (makedir (tackon @default-dest "modules/render"))
  133.    (makedir (tackon @default-dest "modules/printer"))
  134.    (makedir (tackon @default-dest "modules/quantize"))
  135.    (makedir (tackon @default-dest "modules/sys"))
  136.    (makedir (tackon @default-dest "modules/loaders"))
  137.    (makedir (tackon @default-dest "modules/savers"))
  138.  
  139.    (if (exists (tackon @default-dest "modules/loaders"))
  140.       (
  141.          ; Delete old copies of loaders
  142.          (delete (tackon @default-dest "modules/loaders/ALIAS"))
  143.          (delete (tackon @default-dest "modules/loaders/ANIM"))
  144.          (delete (tackon @default-dest "modules/loaders/BMP"))
  145.          (delete (tackon @default-dest "modules/loaders/DCTV"))
  146.          (delete (tackon @default-dest "modules/loaders/DPIIE"))
  147.          (delete (tackon @default-dest "modules/loaders/FLI"))
  148.          (delete (tackon @default-dest "modules/loaders/GIF"))
  149.          (delete (tackon @default-dest "modules/loaders/HAME"))
  150.          (delete (tackon @default-dest "modules/loaders/ICO"))
  151.          (delete (tackon @default-dest "modules/loaders/ILBM"))
  152.          (delete (tackon @default-dest "modules/loaders/Impulse"))
  153.          (delete (tackon @default-dest "modules/loaders/info"))
  154.          (delete (tackon @default-dest "modules/loaders/JPEG.000"))
  155.          (delete (tackon @default-dest "modules/loaders/JPEG.030"))
  156.          (delete (tackon @default-dest "modules/loaders/PBM"))
  157.          (delete (tackon @default-dest "modules/loaders/PCX"))
  158.          (delete (tackon @default-dest "modules/loaders/Rendition"))
  159.          (delete (tackon @default-dest "modules/loaders/Sculpt"))
  160.          (delete (tackon @default-dest "modules/loaders/Targa"))
  161.          (delete (tackon @default-dest "modules/loaders/TIFF"))
  162.          (delete (tackon @default-dest "modules/loaders/VMEM"))
  163.       )
  164.    )
  165.  
  166.    (copyfiles
  167.       (prompt "Select Loader Modules:")
  168.       (help @copyfiles-help)
  169.       (source "ImageFX2:modules/loaders")
  170.       (dest (tackon @default-dest "modules/loaders"))
  171.       (choices
  172.          "ALIAS" "ANIM" "BMP" "DCTV" "DPIIE" "FLI" "GIF"
  173.          "HAME" "ICO" "ILBM" "Impulse" "info" "JPEG.000"
  174.          "JPEG.030" "PBM" "PCX" "Rendition" "Sculpt"
  175.          "Targa" "TIFF" "VMEM"
  176.       )
  177.       (confirm)
  178.    )
  179.  
  180.    (if (exists (tackon @default-dest "modules/savers"))
  181.       (
  182.          ; Delete old copies of savers
  183.          (delete (tackon @default-dest "modules/savers/ALIAS"))
  184.          (delete (tackon @default-dest "modules/savers/ANIM"))
  185.          (delete (tackon @default-dest "modules/savers/BMP"))
  186.          (delete (tackon @default-dest "modules/savers/GIF"))
  187.          (delete (tackon @default-dest "modules/savers/ILBM"))
  188.          (delete (tackon @default-dest "modules/savers/JPEG.000"))
  189.          (delete (tackon @default-dest "modules/savers/JPEG.030"))
  190.          (delete (tackon @default-dest "modules/savers/PBM"))
  191.          (delete (tackon @default-dest "modules/savers/Rendition"))
  192.          (delete (tackon @default-dest "modules/savers/Sculpt"))
  193.          (delete (tackon @default-dest "modules/savers/Targa"))
  194.          (delete (tackon @default-dest "modules/savers/TIFF"))
  195.          (delete (tackon @default-dest "modules/savers/VMEM"))
  196.       )
  197.    )
  198.  
  199.    (copyfiles
  200.       (prompt "Select Saver Modules:")
  201.       (help @copyfiles-help)
  202.       (source "ImageFX2:modules/savers")
  203.       (dest (tackon @default-dest "modules/savers"))
  204.       (choices
  205.          "ALIAS" "ANIM" "BMP" "GIF" "ILBM" "JPEG.000" "JPEG.030"
  206.          "PBM" "Rendition" "Sculpt" "Targa" "TIFF" "VMEM"
  207.       )
  208.       (confirm)
  209.    )
  210.  
  211.    (if (exists (tackon @default-dest "modules/preview"))
  212.       (
  213.          ; Delete old copies of previews
  214.          (delete (tackon @default-dest "modules/preview/Amiga"))
  215.          (delete (tackon @default-dest "modules/preview/Amiga-AGA"))
  216.          (delete (tackon @default-dest "modules/preview/Firecracker"))
  217.          (delete (tackon @default-dest "modules/preview/Hame"))
  218.          (delete (tackon @default-dest "modules/preview/IV24"))
  219.       )
  220.    )
  221.  
  222.    (copyfiles
  223.       (prompt "Select Preview Modules:")
  224.       (help @copyfiles-help)
  225.       (source "ImageFX2:modules/preview")
  226.       (dest (tackon @default-dest "modules/preview"))
  227.       (choices
  228.          "Amiga" "Amiga-AGA" "Firecracker" "Hame" "IV24"
  229.       )
  230.       (confirm)
  231.    )
  232.  
  233.    (if (exists (tackon @default-dest "modules/render"))
  234.       (
  235.          ; Delete old copies of render modules
  236.          (delete (tackon @default-dest "modules/render/Amiga"))
  237.          (delete (tackon @default-dest "modules/render/Amiga1.3"))
  238.          (delete (tackon @default-dest "modules/render/DCTV"))
  239.          (delete (tackon @default-dest "modules/render/EGS"))
  240.          (delete (tackon @default-dest "modules/render/Firecracker"))
  241.          (delete (tackon @default-dest "modules/render/Foreign"))
  242.          (delete (tackon @default-dest "modules/render/Hame"))
  243.          (delete (tackon @default-dest "modules/render/IV24"))
  244.          (delete (tackon @default-dest "modules/render/SAGE"))
  245.          (delete (tackon @default-dest "modules/render/OpalVision"))
  246.       )
  247.    )
  248.  
  249.    (copyfiles
  250.       (prompt "Select Render Modules:")
  251.       (help @copyfiles-help)
  252.       (source "ImageFX2:modules/render")
  253.       (dest (tackon @default-dest "modules/render"))
  254.       (choices
  255.          "Amiga" "Amiga1.3" "DCTV" "EGS" "Firecracker"
  256.          "Foreign" "Hame" "IV24" "SAGE" "OpalVision"
  257.       )
  258.       (confirm)
  259.    )
  260.  
  261.    (if (exists (tackon @default-dest "modules/scanner"))
  262.       (
  263.          ; Delete old copies of scanner modules
  264.          (delete (tackon @default-dest "modules/scanner/ES300C.alt"))
  265.          (delete (tackon @default-dest "modules/scanner/ES300C"))
  266.          (delete (tackon @default-dest "modules/scanner/FrameGrabber"))
  267.          (delete (tackon @default-dest "modules/scanner/IVFG"))
  268.          (delete (tackon @default-dest "modules/scanner/JX100"))
  269.       )
  270.    )
  271.  
  272.    (copyfiles
  273.       (prompt "Select Scanner Modules:")
  274.       (help @copyfiles-help)
  275.       (source "ImageFX2:modules/scanner")
  276.       (dest (tackon @default-dest "modules/scanner"))
  277.       (choices
  278.          "ES300C.alt" "ES300C" "FrameGrabber" "IVFG" "JX100"
  279.       )
  280.       (confirm)
  281.    )
  282.  
  283.    (if (exists (tackon @default-dest "modules/printer"))
  284.       (
  285.          ; Delete old copies of printer modules
  286.          (delete (tackon @default-dest "modules/printer/PostScript"))
  287.          (delete (tackon @default-dest "modules/printer/Prefs"))
  288.       )
  289.    )
  290.  
  291.    (copyfiles
  292.       (prompt "Select Printer Modules:")
  293.       (help @copyfiles-help)
  294.       (source "ImageFX2:modules/printer")
  295.       (dest (tackon @default-dest "modules/printer"))
  296.       (choices
  297.          "PostScript" "Prefs"
  298.       )
  299.       (confirm)
  300.    )
  301.  
  302.    (if (exists (tackon @default-dest "modules/quantize"))
  303.       (
  304.          ; Delete old copies of printer modules
  305.          (delete (tackon @default-dest "modules/quantize/MedianCut"))
  306.          (delete (tackon @default-dest "modules/quantize/Enhanced"))
  307.       )
  308.    )
  309.  
  310.    (copyfiles
  311.       (prompt "Select Quantize Modules:")
  312.       (help @copyfiles-help)
  313.       (source "ImageFX2:modules/quantize")
  314.       (dest (tackon @default-dest "modules/quantize"))
  315.       (choices
  316.          "MedianCut" "Enhanced"
  317.       )
  318.       (confirm)
  319.    )
  320.  
  321.    (copyfiles
  322.       (prompt "")
  323.       (help @copyfiles-help)
  324.       (source "ImageFX2:modules/sys")
  325.       (dest (tackon @default-dest "modules/sys"))
  326.       (all)
  327.    )
  328.  
  329.    ; Preserve user's current convolves, since they aren't different
  330.    (if (= (exists (tackon @default-dest "matrix")) 0)
  331.       (
  332.          (working "Installing Default Convolution Matrices...")
  333.  
  334.          (makedir (tackon @default-dest "matrix"))
  335.  
  336.          (copyfiles
  337.             (prompt "")
  338.             (help @copyfiles-help)
  339.             (source "ImageFX2:matrix")
  340.             (dest (tackon @default-dest "matrix"))
  341.             (all)
  342.          )
  343.       )
  344.    )
  345.  
  346.    ; Preserve user's current transforms, since they aren't any different
  347.    (if (= (exists (tackon @default-dest "transform")) 0)
  348.       (
  349.          (working "Installing Color Transform Presets...")
  350.  
  351.          (makedir (tackon @default-dest "transform"))
  352.  
  353.          (copyfiles
  354.             (prompt "")
  355.             (help @copyfiles-help)
  356.             (source "ImageFX2:transform")
  357.             (dest (tackon @default-dest "transform"))
  358.             (all)
  359.          )
  360.       )
  361.    )
  362.  
  363.    ; Copy libraries needed from disk 2.
  364.  
  365.    (working "Checking for required libraries...")
  366.  
  367.    (copylib
  368.       (prompt "")
  369.       (help @copylib-help)
  370.       (source "ImageFX2:libs/iffparse.library")
  371.       (dest "LIBS:")
  372.    )
  373.  
  374.    (copylib
  375.       (prompt "")
  376.       (help @copylib-help)
  377.       (source "ImageFX2:libs/amigaguide.library")
  378.       (dest "LIBS:")
  379.    )
  380.  
  381.    (copylib
  382.       (prompt "")
  383.       (help @copylib-help)
  384.       (source "ImageFX2:libs/dctv.library")
  385.       (dest "LIBS:")
  386.    )
  387.  
  388.    (copylib
  389.       (prompt "")
  390.       (help @copylib-help)
  391.       (source "ImageFX2:libs/req.library")
  392.       (dest "LIBS:")
  393.    )
  394.  
  395.    ;----------------------------------------------------------
  396.    ; Prompt for third disk.
  397.  
  398.    (askdisk
  399.       (prompt "Please insert ImageFX Disk #3 in any drive.")
  400.       (help "")
  401.       (dest "ImageFX3")
  402.    )
  403.  
  404.    (working "Installing Hook Programs...")
  405.  
  406.    (makedir (tackon @default-dest "Hooks"))
  407.  
  408.    (copyfiles
  409.       (prompt "")
  410.       (help @copyfiles-help)
  411.       (source "ImageFX3:Hooks")
  412.       (dest (tackon @default-dest "Hooks"))
  413.       (all)
  414.    )
  415.  
  416.    (if (= (exists (tackon @default-dest "Hooks.info")) 0)
  417.       (
  418.          (copyfiles
  419.             (prompt "")
  420.             (help @copyfiles-help)
  421.             (source "ImageFX3:Hooks.info")
  422.             (dest @default-dest)
  423.          )
  424.       )
  425.    )
  426.  
  427.    (working "Installing Help Files...")
  428.  
  429.    (copyfiles
  430.       (prompt "")
  431.       (help @copyfiles-help)
  432.       (source "ImageFX3:help")
  433.       (dest (tackon @default-dest "help"))
  434.       (all)
  435.    )
  436.  
  437.    (working "Installing Arexx Programs...")
  438.  
  439.    ; Make copy of existing rexx directory, so user can
  440.    ; save his current Arexx programs if he wants.
  441.  
  442.    (if (exists (tackon @default-dest "rexx"))
  443.       (
  444.          (set copyrexx 1)
  445.          (if (> @user-level 1)
  446.             (set copyrexx
  447.                (askbool
  448.                   (prompt "Do you want to make a backup copy of your current "
  449.                           "Arexx directory (in case you have made any changes "
  450.                           "to the default Arexx scripts?")
  451.                   (help "")
  452.                   (default 1)
  453.                )
  454.             )
  455.          )
  456.  
  457.          (if (<> copyrexx 0)
  458.             (
  459.                (makedir (tackon @default-dest "oldrexx"))
  460.  
  461.                (copyfiles
  462.                   (prompt "")
  463.                   (help @copyfiles-help)
  464.                   (source (tackon @default-dest "rexx"))
  465.                   (dest (tackon @default-dest "oldrexx"))
  466.                   (all)
  467.                )
  468.  
  469.                (if (> @user-level 1)
  470.                   (message "Your Arexx directory has been saved to the 'oldrexx' directory.")
  471.                )
  472.             )
  473.          )
  474.       )
  475.    )
  476.  
  477.    (makedir (tackon @default-dest "rexx"))
  478.  
  479.    (copyfiles
  480.       (prompt "")
  481.       (help @copyfiles-help)
  482.       (source "ImageFX3:rexx")
  483.       (dest (tackon @default-dest "rexx"))
  484.       (all)
  485.    )
  486.  
  487.    (working "Installing Icons...")
  488.  
  489.    (if (<= osver 36)
  490.       (
  491.  
  492.          (copyfiles
  493.             (prompt "")
  494.             (help @copyfiles-help)
  495.             (source "ImageFX3:icons_1.3/ImageFX_13.info")
  496.             (dest @default-dest)
  497.             (newname "ImageFX.info")
  498.          )
  499.  
  500.          (if (= (exists (tackon @default-dest "ImageFX_WB.info")) 0)
  501.             (
  502.                (copyfiles
  503.                   (prompt "")
  504.                   (help @copyfiles-help)
  505.                   (source "ImageFX3:icons_1.3")
  506.                   (dest @default-dest)
  507.                   (choices
  508.                      "ImageFX_WB.info"
  509.                      "IMP.info"
  510.                      "Cinemorph.info"
  511.                   )
  512.                )
  513.             )
  514.          )
  515.  
  516.          (if (= (exists (tackon @default-dest "icons")) 0)
  517.             (
  518.                (makedir (tackon @default-dest "icons"))
  519.  
  520.                (copyfiles
  521.                   (prompt "")
  522.                   (help @copyfiles-help)
  523.                   (source "ImageFX3:icons_1.3")
  524.                   (dest (tackon @default-dest "icons"))
  525.                   (choices
  526.                      "Buffer.info"
  527.                      "Brush.info"
  528.                      "Rendered.info"
  529.                      "Palette.info"
  530.                   )
  531.                )
  532.             )
  533.          )
  534.  
  535.       )
  536.       ; else
  537.       (
  538.  
  539.          (if (= (exists (tackon @default-dest "ImageFX_WB.info")) 0)
  540.             (
  541.                (copyfiles
  542.                   (prompt "")
  543.                   (help @copyfiles-help)
  544.                   (source "ImageFX3:icons_2.0")
  545.                   (dest @default-dest)
  546.                   (choices
  547.                      "ImageFX_WB.info"
  548.                      "IMP.info"
  549.                      "Cinemorph.info"
  550.                   )
  551.                )
  552.             )
  553.          )
  554.  
  555.          (if (= (exists (tackon @default-dest "icons")) 0)
  556.             (
  557.                (makedir (tackon @default-dest "icons"))
  558.  
  559.                (copyfiles
  560.                   (prompt "")
  561.                   (help @copyfiles-help)
  562.                   (source "ImageFX3:icons_2.0")
  563.                   (dest (tackon @default-dest "icons"))
  564.                   (choices
  565.                      "AppIcon.info"
  566.                      "Buffer.info"
  567.                      "Brush.info"
  568.                      "Rendered.info"
  569.                      "Palette.info"
  570.                   )
  571.                )
  572.             )
  573.          )
  574.  
  575.       )
  576.    )
  577.  
  578.    (set copysamples 1)
  579.    (if (> @user-level 1)
  580.       (set copysamples
  581.          (askbool
  582.             (prompt "Do you want to copy the sample images, animations, and "
  583.                     "morph projects over?")
  584.             (help "")
  585.             (default 1)
  586.          )
  587.       )
  588.    )
  589.  
  590.    (if (<> copysamples 0)
  591.       (
  592.  
  593.          ;----------------------------------------------------------
  594.          ; Prompt for fourth disk.
  595.  
  596.          (askdisk
  597.             (prompt "Please insert ImageFX Disk #4 in any drive.")
  598.             (help "")
  599.             (dest "ImageFX4")
  600.          )
  601.  
  602.          (working "Installing Sample Files...")
  603.  
  604.          (if (= (exists (tackon @default-dest "Animations.info")) 0)
  605.             (
  606.                (copyfiles
  607.                   (prompt "")
  608.                   (help @copyfiles-help)
  609.                   (source "ImageFX4:")
  610.                   (dest @default-dest)
  611.                   (choices
  612.                      "Animations.info"
  613.                      "MorphProjects.info"
  614.                      "Pictures.info"
  615.                   )
  616.                )
  617.             )
  618.          )
  619.  
  620.          (copyfiles
  621.             (prompt "")
  622.             (help @copyfiles-help)
  623.             (source "ImageFX4:Animations")
  624.             (dest (tackon @default-dest "Animations"))
  625.             (all)
  626.          )
  627.  
  628.          (copyfiles
  629.             (prompt "")
  630.             (help @copyfiles-help)
  631.             (source "ImageFX4:MorphProjects")
  632.             (dest (tackon @default-dest "MorphProjects"))
  633.             (all)
  634.          )
  635.  
  636.          (copyfiles
  637.             (prompt "")
  638.             (help @copyfiles-help)
  639.             (source "ImageFX4:Pictures")
  640.             (dest (tackon @default-dest "Pictures"))
  641.             (all)
  642.          )
  643.       )
  644.    )
  645.  
  646.    (makeassign "ImageFX" @default-dest)
  647.  
  648.    ; Add IFX: assign to startup-sequence, only ask if user is
  649.    ; an expert.  This should be the last thing in case this
  650.    ; !@#$@# installer utility chokes modifying the startup.
  651.  
  652.    (set modifystartup 1)
  653.    (if (> @user-level 1)
  654.       (set modifystartup
  655.          (askbool
  656.             (prompt "Do you want to add an ImageFX: assign to your Startup sequence?")
  657.             (help "")
  658.             (default 1)
  659.          )
  660.       )
  661.    )
  662.  
  663.    (if (<> modifystartup 0)
  664.       (
  665.          (onerror
  666.             (message
  667.                "Cannot update startup sequence.  You will need to "
  668.                "add the following command manually: "
  669.                "'Assign ImageFX: %ls'" @default-dest)
  670.          )
  671.  
  672.          (startup "ImageFX"
  673.             (prompt "")
  674.             (help @startup-help)
  675.             (command "Assign ImageFX: " @default-dest)
  676.          )
  677.  
  678.       )
  679.    )
  680.  
  681. )
  682.